In many cases of developing a transmission apparatus having a plurality of transmission line interfaces, the development is performed via a plurality of cycles to achieve functions required by a user, within a period that meets a delivery requested by the user. In the development, functions of the transmission line interface supported by the transmission apparatus are added in each development cycle, and the resultant transmission apparatus is released. For this purpose, units having transmission line interface functions are configured so as to be compatible when they are installed in transmission apparatuses. Furthermore, to achieve high flexibility in design, functions are expanded by changing program data in each unit without changing hardware. More specifically, for the above purpose, an FPGA (Field Programmable Gate Array), a DSP (Digital Signal Processor), or the like is used. Hereinafter, a transmission apparatus having program data or the like installed therein will be simply referred to as a transmission apparatus.
In some cases, regarding the plurality of functions of the transmission line interface, transmission apparatuses are released such that their functions are improved or added phase by phase depending on a delivery specified by users. In the following discussion, it is assumed that four levels of functions A0, A1, A2, and A3 are provided via four phases as follows:                A0=basic functions;        A1=A0+additional functions (a1);        A2=A1+additional functions (a2); and        A3=A2+additional functions (a3).When the development the transmission apparatus is completed for all levels A0 to A3, there are transmission apparatuses of four grades (function levels) of A0, A1, A2, and A3 on the network.        
In this situation, if it becomes necessary to unify the functions of the transmission apparatuses on the network to A3, then transmission apparatuses with functions of A0, A1, or A2 have to be upgraded to A3. More specifically, transmission apparatuses having functions of A0 are upgraded to have additional functions (a1, a2, and a3), transmission apparatuses having functions of A1 are upgraded to have additional functions (a2 and a3), and transmission apparatuses having functions of A2 are upgraded to have additional functions (a3).
As described above, the transmission apparatuses being operated on the network have a plurality of grades. In many cases, the upgrading is performed by changing the program data of the FPGA or the DSP disposed in each of the units to be upgraded or by changing the program data installed in the control unit that controls each of the units to be upgraded. However, because the transmission apparatuses on the network are different in grade, it is necessary to update the program data (firmware) differently depending on the transmission apparatuses, and thus the updating needs a complicated process.
As one of techniques to upgrade software, it has been proposed by Japanese Laid-open Patent Publication No. 2007-334636 to produce a difference file indicating the difference between an upgraded file and an upgrade file thereby to minimize the time needed to update the software depending on a system environment.
Note that the term “grade” is used to describe the function level realized.
Also note that the term “unit” is used to describe a PCB (Printed Circuit Board) implementing one of individual functions such as a transmission line interface function, a control function, etc.